package com.xms.sdk.service;

import com.xms.core.model.PagedList;
import com.xms.sdk.core.DynamicData;
import com.xms.sdk.core.query.QueryExpression;

/**
 * <p>
 * 查询数据服务
 * </p>
 *
 * @author migo
 * @since 2021/9/1
 */
public interface IFetchDataService {

    PagedList<DynamicData> execute(FetchDescriptor fetch, boolean wrapOptionName) throws Exception;

    PagedList<DynamicData> execute(QueryExpression query, boolean wrapOptionName) throws Exception;

    PagedList<DynamicData> execute(FetchDescriptor fetch) throws Exception;

    PagedList<DynamicData> execute(QueryExpression query) throws Exception;

    /*Entity getMainEntity();
    QueryExpression getQueryExpression();
    void setQueryExpression(QueryExpression query);
    IQueryResolver getQueryResolver();
    void setNonePermissionFields(List<Attribute> attributes);
    List<Attribute> getNonePermissionFields();

    void getMetaDatas(FetchDescriptor fetch);

    void getMetaDatas(String fetchConfig);*/
}
